package com.itheima.day12.第一题;

import java.io.*;

/*
在复制文件的操作中，我们可以使用如下的方法，每次读取一个字节的数据：

public int read() //FileInputStreamd的读取数据方法，返回值表示读取的数据的字节值
但这样的效率比较低，我们还可以采用如下方式，建立缓冲区，每次读取若干字节的数据：

public int read(byte[] b) //读取最多b.length个字节的数据为字节数组，返回值表示读入数组中的字节数
请采用这种读取方式，把“E:\\itcast\\mn.jpg”复制到模块目录下的“mn.jpg”。
*/
public class Demo1 {
    public static void main(String[] args) throws IOException {
        //创建字节缓冲流对象
        BufferedInputStream bis = new BufferedInputStream(new FileInputStream("E:\\itcast\\mn.jpg"));
        BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("homework\\mn.jpg"));

        //循环读写
        byte[] bytes = new byte[1024];
        int len;
        while ((len = bis.read(bytes)) != -1){
            bos.write(bytes,0,len);
        }

        //关流,释放资源
        bis.close();
        bos.close();
    }
}
